注:为了方便,我把我在这个过程中的一些问题列在列下面,有很多bug的解决还是能在下面找到答案,希望能帮到你们。
鉴于博主我比较菜,所以这篇博客其实是建议如果要用C++调用还是Python2吧。当然可能一段时间以后有比较好的解决办法或者python3变得更科学,或者你们知道很好的思路,欢迎评论区交流。
1. 配置
- 项目–>属性–>vc++目录–>包含目录 添加python安装目录中include目录
- 项目–>属性–>vc++目录–>库目录
- 添加python安装目录中libs目录 链接器–>输入–>附加依赖项 添加python35.lib
2. 在C++中调用python(版本3.5)
准备参考以下做,但是这些都是C++调用python2
C++ 调用 python
C++中嵌入python程序——使用API接口,从函数到类然后找到了这篇文章,但是里面不涉及类,只有简单的函数调用
c++与Python3互相调用在贴吧里找到的回复是这样的
手册里是建议这样产生一个类: https://docs.python.org/3/extending/newtypes.html
另外一种方式是调用PyType_Type这个对象来产生一个实例,也是个类来的…
来源:问题链接:http://bbs.csdn.net/topics/390748303
对的,有手册当然是看手册。在手册里好像可以发现新大陆的样子。但是后来我发现,还是找不到关于Import class的东西
Extending Python with C or C++‘下面这个是之前被忽略的一篇文章,因为标题总让我以为是在Python里调用C++。文里的一句话到了心坎上“有什么问题记得多查英文资料,国内的这方面知识少”。
Python嵌入C++详解(3)–Import Class
报错:
找不到python35_d.lib这个文件。
思路:在pyconfig.h中把pragma comment(lib,"python35_d.lib")改成pragma comment(lib,"python35.lib")
发现还是报错。
解决:还是乖乖用源码编译生成吧。
Python.org 下载源码包
地址:https://www.python.org/downloads/source/
选择 Gzipped source tarball
打开pcbuild目录下的sln文件,必须用VS打开该解决方案,过低版本的vs打不开该解决方案。(sln用记事本打开里面记着VS版本要求ÿ